Unless otherwise indicated herein, the description in this section is not prior art to the claims in this application and is not admitted to be prior art by inclusion in this section.
To hold a small amount of data used by a device and an apparatus even during power-cutoff, a typical information processing device, especially an embedded device and a Multifunction Peripheral (MPF), has used an Electrically Erasable Programmable Read-Only Memory (EEPROM).
The EEPROM is often used as a non-volatile semiconductor memory, which saves the small amount of data on a volatile memory includes a Dynamic Random Access Memory (DRAM) or a similar memory.
For example, the following technique has been proposed as a technique to optimize a control of writing data from the volatile memory to the non-volatile semiconductor memory. Data are grouped by write timings. The technique writes only data to be written at a specific timing to the non-volatile semiconductor memory to ensure shortening time required for writing.
In advance of the writing of data in units of pages, the non-volatile semiconductor memory deletes (initializes) data in units of blocks. The number of initializations (the number of writings) has an upper limit due to the structure of the memory. Therefore, to avoid concentration of writing to a specific block, a wear leveling technology, which is to perform uniform writing, has been developed.
For example, Journaling Flash File System, version 2 (JFFS2) is provided as a file system that has a journal function optimized for a property of a NAND flash memory (registered trademark) and performs the wear leveling. JFFS2 is a file system for Linux (registered trademark) and is often used for the embedded device.